A challenge for a digital predistortion linearization system is to create and maintain accuracy of the look up table (LUT) in presence of a changing power amplifier (PA) nonlinearity characteristics. Typical implementations of digital predistortion use a lookup table that contains a predistortion amount as a function of input signal amplitude. In other words, an input signal that is fed into the amplifier will also be directed to a “lookup table” (LUT). The LUT will output a predistortion signal to be combined with the input signal, wherein the predistortion signal is a function of the input signal's amplitude.
Prior art implementations of predistortion LUTs use an “offline” method to train, or modify the LUT. This might entail the usage of a test signal that sweeps the dynamic range of the PA using a relatively slow ramp of amplitude input to the transmitter. Such a method allows the system transients, caused by normal system filtering, to settle out at each amplitude level and provides an accurate method to measure the PA distortion for each distinct LUT entry. Unfortunately, this method of training requires the normal transmitter operation to be temporarily interrupted, which is acceptable only prior to normal transmitter operation, such as during factory tuning. While the transmitter is operating in its normal mode, any changes in the PA characteristic due to environmental, loading, or aging effects will require a modification to the LUT to maintain acceptable predistortion performance. Thus, a method and apparatus for predistortion training in a PA during normal transmitter operation is therefore highly desirable.
Notwithstanding the above, some retraining methods that optimize during normal transmitter operation seek to modify each LUT coefficient independent of the others by attempting to correlate a measured PA output error with a given LUT coefficient. This turns problematic when typical system filtering is encountered because a given PA output signal becomes a function of the current signal sample and several previous signal samples as well. The resulting LUT in such a system will be generally more noisy than can be tolerated. Any predistortion training should minimize the problems associated with modifying each LUT coefficient independently.